package cn.qiyu5522.tk_ems.entity.dto;

import cn.qiyu5522.tk_ems.entity.Resume;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.time.LocalDate;

/**
 * @ProjectName: tk_ems
 * @Package: cn.qiyu5522.tk_ems.entity.dto
 * @ClassName: ResumeDTO
 * @Author: [Toneky]
 * @Date: 2023/2/25 13:11
 * @Version: V1.0
 **/
@Data
@ApiModel("简历DTO对象")
public class ResumeDTO {

    @ApiModelProperty(value = "主键ID")
    @NotNull(message = "主键ID不能为空",groups = {Resume.Update.class})
    private Integer id;

    @ApiModelProperty(value = "学生ID")
    @NotNull(message = "学生ID不能为空",groups = {Resume.Update.class,Resume.Insert.class})
    private Long studentId;

    @ApiModelProperty(value = "姓名")
    @NotBlank(message = "姓名不能为空",groups = {Resume.Update.class,Resume.Insert.class})
    private String name;

    @ApiModelProperty(value = "性别：0-女，1-男")
    @NotNull(message = "性别不能为空",groups = {Resume.Update.class,Resume.Insert.class})
    private Integer sex;

    @ApiModelProperty(value = "生日")
    private LocalDate birthday;

    @ApiModelProperty(value = "期望工作城市")
    private String expectedCity;
    @ApiModelProperty(value = "期望工作城市编号")
    private String expectedCityId;

    @ApiModelProperty(value = "期望职位类别")
    private Integer expectedPositionCategory;
    @ApiModelProperty(value = "期望职位")
    private Integer expectedPosition;
    @ApiModelProperty(value = "期望职位类别名称")
    private String expectedPositionCategoryName;
    @ApiModelProperty(value = "期望职位名称")
    private String expectedPositionName;


    @ApiModelProperty(value = "期望薪资")
    private Integer expectedSalary;

    @ApiModelProperty(value = "手机号码")
    private String mobile;

    @ApiModelProperty(value = "邮箱")
    private String email;

    @ApiModelProperty(value = "学历：小学，初中，高中，中专，大专，本科，硕士，7-博士")
    @NotNull(message = "学历不能为空",groups = {Resume.Update.class,Resume.Insert.class})
    private Integer education;

    @ApiModelProperty(value = "学校")
    private String school;

    @ApiModelProperty(value = "专业")
    private Long major;

    @ApiModelProperty(value = "证书")
    private String certificate;

    @ApiModelProperty(value = "技能")
    private String skill;

    @ApiModelProperty(value = "毕业时间")
    private LocalDate graduationTime;


    @ApiModelProperty(value = "实习经验")
    private String internshipExperience;

    @ApiModelProperty(value = "项目经验")
    private String projectExperience;

    @ApiModelProperty(value = "工作经历")
    private String experience;

    @ApiModelProperty(value = "自我评价")
    private String selfEvaluation;

    @ApiModelProperty(value = "修改时间--起始")
    private LocalDate updateTimeStart;

    @ApiModelProperty(value = "创建时间--截止")
    private LocalDate updateTimeEnd;

}
